/*
Simple Forum Auto Poster.
Copyright (C) 2011 Gianni Van Hoecke.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/
package domain.ui;

import domain.template.Template;

/**
 *
 * @author Gianni Van Hoecke <gianni.vh@gmail.com>
 *
 * Interface that must be used when managing the templates.
 */
public interface TemplateUI
{
    /**
     * Notifies the UI to load the list of available templates.
     */
    public void loadList();

    /**
     * Notifies the UI to load a certain template.
     * @param template The template to load.
     */
    public void loadTemplate(Template template);

    /**
     * Notifies the UI to select a certain template.
     * @param name The name of the template to select.
     */
    public void setSelectedTemplate(String name);

    /**
     * @return The selected template at the UI.
     */
    public String getSelectedTemplate();

    /**
     * @return The body of the selected template.
     */
    public String getBody();
}